package com.example.wan1.di;

import com.example.wan1.base.activity.SimpleActivity;
import com.example.wan1.di.ano.ActivityScope;
import com.example.wan1.view.collect.CollectActivity;
import com.example.wan1.view.collect.CollectModule;
import com.example.wan1.view.login.LoginActivity;
import com.example.wan1.view.login.LoginModule;
import com.example.wan1.view.login.RegisterActivity;
import com.example.wan1.view.login.RegisterModule;
import com.example.wan1.view.search.SearchActivity;
import com.example.wan1.view.search.SearchModule;
import com.example.wan1.view.system.knowledge.KnowledgeModule;
import com.example.wan1.view.system.knowledge.level2.KnowledgeLevelActivity;
import com.example.wan1.view.todo.TodoActivity;
import com.example.wan1.view.todo.TodoModule;
import com.example.wan1.view.user.UserCenterActivity;
import com.example.wan1.view.user.UserCenterModule;
import com.example.wan1.view.wechat.WechatActivity;
import com.example.wan1.view.wechat.WechatModule;

import dagger.Module;
import dagger.android.ContributesAndroidInjector;

/***
 * 创建时间：2020/5/2 16:08
 * 创建人：10850
 * 功能描述：
 */
@Module/*(subcomponents = ActComponent.class)*/
public abstract class ActivitysModule {

    @ActivityScope
    @ContributesAndroidInjector(modules = {ActModule.class})
    abstract public SimpleActivity contributesSimpleActivity();

    @ActivityScope
    @ContributesAndroidInjector(modules = {SearchModule.class})
    abstract public SearchActivity contributesSearchActivity();

    @ActivityScope
    @ContributesAndroidInjector(modules = LoginModule.class)
    abstract public LoginActivity contributesLoginActivity();

    @ActivityScope
    @ContributesAndroidInjector(modules = RegisterModule.class)
    abstract public RegisterActivity contributesRegisterActivity();

    @ActivityScope
    @ContributesAndroidInjector(modules = TodoModule.class)
    abstract public TodoActivity contributesTodoActivity();

    //知识体系
    @ActivityScope
    @ContributesAndroidInjector(modules = KnowledgeModule.class)
    abstract public KnowledgeLevelActivity contributesKnowledgeLevelActivity();

    //公众号
    @ActivityScope
    @ContributesAndroidInjector(modules = WechatModule.class)
    abstract public WechatActivity contributesWechatActivity();

    //收藏
    @ActivityScope
    @ContributesAndroidInjector(modules = {CollectModule.class})
    abstract public CollectActivity contributesCollectActivity();

    //用户中心
    @ActivityScope
    @ContributesAndroidInjector(modules = UserCenterModule.class)
    abstract public UserCenterActivity contributesUserCenterActivity();
}
